package com.dufang.thread06DeadLock;

/**
 * @ClassName:DemoDeadLock
 * @Description 死锁：两个或两个以上的线程在执行过程中由于竞争同步锁而产生的一种阻塞现象；
 *                   如果没有外力的作用，他们将无法继续执行下去。
 *                   出现在同步代码块的嵌套中
 * @Author Administrator
 * @Date 2025/7/7/007 15:04
 * @Version 1.0
 **/
public class DemoDeadLock implements Runnable{
    @Override
    public void run() {
        synchronized (LockA.lockA){
            System.out.println("if....lockA");
            synchronized (LockB.lockB){
                System.out.println("if....lockB");
            }
        }
        synchronized (LockB.lockB){
            System.out.println("else....lockB");
            synchronized (LockA.lockA){
                System.out.println("else.....lockA");
            }
        }
    }
}
